import { get, post, put, del } from '@/utils/request';
import type { Tenant, PaginatedResponse } from '@/types';
import type { GetTenantsParams, CreateTenantData, UpdateTenantData } from './type';

export type { GetTenantsParams, CreateTenantData, UpdateTenantData };

/**
 * 租户相关API
 */

// 获取租户列表
export const getTenants = (params?: GetTenantsParams) => {
  return get<PaginatedResponse<Tenant>>('/tenants', params);
};

// 获取租户详情
export const getTenantById = (id: string) => {
  return get<Tenant>(`/tenants/${id}`);
};

// 创建租户
export const createTenant = (data: CreateTenantData) => {
  return post<Tenant>('/tenants', data);
};

// 更新租户
export const updateTenant = (data: UpdateTenantData) => {
  const { id, ...rest } = data;
  return put<Tenant>(`/tenants/${id}`, rest);
};

// 删除租户
export const deleteTenant = (id: string) => {
  return del(`/tenants/${id}`);
};

